perm filename PUBMAC[206,LSP] blob sn#236135 filedate 1976-10-16 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	.macro cb(head) ⊂ if lines<7 then next page else skip once center select 4
C00009 ENDMK
C⊗;
.macro cb(head) ⊂ if lines<7 then next page else skip; once center; select 4
head

.⊃
.MACRO PICTURE(FNT) ⊂
.BEGIN NOFILL; PREFACE 0 MILLS;
.VARIABLE CHQZWX;
.TURN OFF "%παβ#∞∂\→←↓↑∪{";
.AT 8 ⊂"        "⊃ ; <<i.e. nothing special--disables other AT 8 response>>
.AT 16 ⊂"                "⊃ ; <<similar>>
.AT "∞" ⊂ TURN ON "∂{"; CHQZWX←CHARW; CHARW←8}∂+1{CHARW←CHQZWX; TURN OFF; ⊃;
.GROUP
.SELECT FNT; ⊃
.MACRO OVERPRINT(NUM) ⊂ ONCE SUPERIMPOSE (IF LENGTH(NUM) = 0 THEN 2 ELSE NUM);⊃
.
.MACRO SCRIPTS ⊂ TURN ON "↑↓[]&_∪" ⊃
.MACRO GREEKS ⊂ TURN ON "{∂\αβ#←→∞" ⊃
.MACRO FORMAT ⊂ SCRIPTS ; GREEKS ⊃
.MACRO STANDARD FRONT(SECPRINT, SSPRINT, PAGEPRINT, INDEXCHAR) ⊂
.IF "SECPRINT" ≠ NULL THEN
.	START
.	COUNT SECTION PRINTING "SECPRINT"
.	MACRO SEC(NAME) ⊂ SECNAME ← SSNAME ← NULL ;
.	NEXT PAGE; NEXT SECTION;
.		BEGIN
.		FORMAT CENTER select 4;
CHAPTER {!}
.		SKIP
NAME
.		SKIP 3
.		SECNAME ← "CHAPTER " & SECTION!
.		SEND CONTENTS ⊂ SKIP 1;
{SECTION!}∂8NAME{BREAK ⊃
.		END	⊃
.	END ;
.IF "SSPRINT" ≠ NULL THEN
.	START
.	SUBBING ← "YES"
.	COUNT SUBSECTION IN SECTION PRINTING "SSPRINT"
.	MACRO SS(NAME) ⊂ SSNAME←"NAME"; IF LINES<8 THEN NEXT PAGE; NEXT SUBSECTION;
.		START
.		FILL SKIP 2 TURN ON "{∂∞→#↓_\"
.		SEND CONTENTS ⊂
∂(13){SUBSECTION!}∂(23)NAME\∞.∞ ∞ ∞ ∂(67)→#{PAGE}
. ⊃
.		END
{!}.##%4NAME%1
.		SKIP;
.		TURN OFF ; ⊃
.	END
.ELSE SUBBING ← "NO"
.IF "PAGEPRINT" ≠ NULL THEN COUNT PAGE IN SECTION PRINTING "PAGEPRINT"
.INDEXING ← IF "INDEXCHAR"=NULL THEN "*" ELSE "INDEXCHAR" ;
.IF "INDEXCHAR" ≠ NULL THEN
.	START
.	AT INDEXING  PHRASE  INDEXING  ⊂
.		"PHRASE" ; TURN ON "{"
.		SEND INDEX ⊂}<<{PAGE}#PHRASE#{⊃
.			   TURN OFF	     ⊃
.	END
.ELSE INDEXING ← "NO"
.		⊃
.
.MACRO STANDARD BACK ⊂
.SECNAME ← SSNAME ← NULL
.IF INDEXING ≠ "NO" THEN
.	START
.	PORTION INDEX
.	WASWORD ← WASLETT ← WASPG ← NULL ;
.	AT "<<" PGNO "#" PHRASE "#" ⊂ LETT ← "PHRASE"[1] ;
.		IF LETT ≠ WASLETT THEN IF LINES<6 THEN NEXT PAGE ELSE SKIP 2 ;
.		IF "PHRASE" ≠ WASWORD THEN START BREAK }PHRASE##PGNO{ END
.		ELSE IF "PGNO" ≠ WASPG THEN },#PGNO{ ;
.		WASPG ← "PGNO" ; WASLETT ← LETT ; WASWORD ← "PHRASE" ; ⊃
.	NOFILL FORMAT INDENT 0,0 PREFACE 0
←INDEX
.	SKIP 4
.	SECNAME ← "INDEX"
.	RECEIVE "##"
.	SECNAME ← NULL
.	END
.COUNT PAGE PRINTING "i"
.PORTION CONTENTS
.FILL NOJUST FORMAT CRBREAK
.INDENT 0,30,10 PREFACE 1 TABS 30,33,36,39,42,45,48,51,54,57,60,63
←↓_T A B L E   O F   C O N T E N T S_↓
.SKIP 3
.IF SUBBING THEN
SECTION→PAGE
.SKIP 2
.SECNAME ← "TABLE OF CONTENTS"
.RECEIVE
.		⊃